package com.atguigu.jxc.service;

import com.atguigu.jxc.domain.ServiceVO;
import com.atguigu.jxc.entity.ReturnList;

import java.util.Map;

/**
 * @description
 */
public interface ReturnListGoodsService {



    /**
     * 保存退货单信息
     * @param returnList 退货单信息实体
     * @param returnListGoodsStr 退货商品信息JSON字符串
     * @return
     */
    void save(ReturnList returnList, String returnListGoodsStr);

    /**
     * 查询退货单信息
     * @param returnNumber 退货单号
     * @param supplierId 供应商ID
     * @param state 付款状态
     * @param sTime 开始时间
     * @param eTime 结束时间
     * @return
     */
    Map<String, Object> list(String returnNumber, Integer supplierId, Integer state, String sTime, String eTime);

    /**
     * 查询退货单商品信息
     * @param returnListId 退货单ID
     * @return
     */
    Map<String, Object> goodsList(Integer returnListId);

    /**
     * 删除退货单及商品信息
     * @param returnListId 退货单ID
     * @return
     */
    void delete(Integer returnListId);

    /**
     * 退货商品统计
     * @param sTime 开始时间
     * @param eTime 结束时间
     * @param goodsTypeId 商品类别ID
     * @param codeOrName 编号或商品名称
     * @return
     */
    String count(String sTime, String eTime, Integer goodsTypeId, String codeOrName);
}
